package org.wu.acw.server.infrastructure.entity;

import lombok.Data;
import lombok.experimental.Accessors;
import org.wu.framework.lazy.orm.core.stereotype.LazyTableIndex;
import org.wu.framework.core.stereotype.LayerField;
import org.wu.framework.core.stereotype.LayerField.LayerFieldType;
import org.wu.framework.lazy.orm.core.stereotype.LazyTable;
import org.wu.framework.lazy.orm.core.stereotype.LazyTableField;
import org.wu.framework.lazy.orm.core.stereotype.*;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.media.Schema;
import java.time.LocalDateTime;
import org.wu.framework.lazy.orm.core.stereotype.LazyTableFieldId;
import java.lang.Integer;
import java.lang.String;
import java.io.File;
/**
 * describe 单表操作日志 
 *
 * @author Jia wei Wu
 * @date 2024/04/29 09:55 上午
 * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyInfrastructureEntity 
 **/
@Data
@Accessors(chain = true)
@LazyTable(tableName = "acw_single_table_operation_log",schema = "acw",comment = "单表操作日志")
@Schema(title = "acw_single_table_operation_log",description = "单表操作日志")
public class AcwSingleTableOperationLogDO {


    /**
     * 
     * 创建时间
     */
    @Schema(description ="创建时间",name ="createTime",example = "")
    @LazyTableField(name="create_time",comment="创建时间",columnType="datetime")
    private LocalDateTime createTime;

    /**
     * 
     * 主键
     */
    @Schema(description ="主键",name ="id",example = "")
    @LazyTableFieldId(name = "id", comment = "主键")
    private Integer id;

    /**
     * 
     * 实例ID
     */
    @Schema(description ="实例ID",name ="instanceId",example = "")
    @LazyTableField(name="instance_id",comment="实例ID",columnType="varchar(255)")
    private String instanceId;

    /**
     * 
     * schema
     */
    @Schema(description ="schema",name ="schemaName",example = "")
    @LazyTableField(name="schema_name",comment="schema",columnType="varchar(255)")
    private String schemaName;

    /**
     * 
     * 表
     */
    @Schema(description ="表",name ="tableName",example = "")
    @LazyTableField(name="table_name",comment="表",columnType="varchar(255)")
    private String tableName;

    /**
     * 
     * 新数据
     */
    @Schema(description ="新数据",name ="tableNewRow",example = "")
    @LazyTableField(name="table_new_row",comment="新数据",columnType="blob")
    private byte[] tableNewRow;

    /**
     * 
     * 原始数据
     */
    @Schema(description ="原始数据",name ="tableOldRow",example = "")
    @LazyTableField(name="table_old_row",comment="原始数据",columnType="blob")
    private byte[] tableOldRow;

    /**
     * 
     * 用户ID
     */
    @Schema(description ="用户ID",name ="userId",example = "")
    @LazyTableField(name="user_id",comment="用户ID",columnType="varchar(255)")
    private String userId;

    /**
     * 
     * 区域ID
     */
    @Schema(description ="区域ID",name ="zoneId",example = "")
    @LazyTableField(name="zone_id",comment="区域ID",columnType="varchar(255)")
    private String zoneId;

}